package com.xs.common.domain.entity;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.xs.common.annotation.Excel;
import com.xs.common.core.domain.BaseEntity;

/**
 * 房间管理对象 rooms
 * 
 * @author
 * @date 2024-06-15
 */
public class Rooms extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 房间ID，主键，自增 */
    private Long roomId;

    /** 楼栋 */
    @Excel(name = "楼栋")
    private Long buildingType;

    /** 楼层 */
    @Excel(name = "楼层")
    private Long floor;

    /** 房间号 */
    @Excel(name = "房间号")
    private String roomNumber;

    /** 房间类型） */
    @Excel(name = "房间类型）")
    private Long roomType;

    /** 房间容纳人数 */
    @Excel(name = "房间容纳人数")
    private Long capacity;

    /** 每晚价格 */
    @Excel(name = "每晚价格")
    private BigDecimal pricePerNight;

    /** 房间设施 */
    @Excel(name = "房间设施")
    private String amenities;

    /** 房间图片 */
    @Excel(name = "房间图片")
    private String imgUrl;

    /** 房间状态） */
    @Excel(name = "房间状态）")
    private Long roomStatus;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** 用户姓名 */
    @Excel(name = "用户姓名")
    private String userName;

    /** 用户身份证 */
    @Excel(name = "用户身份证")
    private String userIdCard;

    /** 用户入住日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "用户入住日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date userCheckinDate;

    public void setRoomId(Long roomId) 
    {
        this.roomId = roomId;
    }

    public Long getRoomId() 
    {
        return roomId;
    }
    public void setBuildingType(Long buildingType) 
    {
        this.buildingType = buildingType;
    }

    public Long getBuildingType() 
    {
        return buildingType;
    }
    public void setFloor(Long floor) 
    {
        this.floor = floor;
    }

    public Long getFloor() 
    {
        return floor;
    }
    public void setRoomNumber(String roomNumber) 
    {
        this.roomNumber = roomNumber;
    }

    public String getRoomNumber() 
    {
        return roomNumber;
    }
    public void setRoomType(Long roomType) 
    {
        this.roomType = roomType;
    }

    public Long getRoomType() 
    {
        return roomType;
    }
    public void setCapacity(Long capacity) 
    {
        this.capacity = capacity;
    }

    public Long getCapacity() 
    {
        return capacity;
    }
    public void setPricePerNight(BigDecimal pricePerNight) 
    {
        this.pricePerNight = pricePerNight;
    }

    public BigDecimal getPricePerNight() 
    {
        return pricePerNight;
    }
    public void setAmenities(String amenities) 
    {
        this.amenities = amenities;
    }

    public String getAmenities() 
    {
        return amenities;
    }
    public void setImgUrl(String imgUrl) 
    {
        this.imgUrl = imgUrl;
    }

    public String getImgUrl() 
    {
        return imgUrl;
    }
    public void setRoomStatus(Long roomStatus) 
    {
        this.roomStatus = roomStatus;
    }

    public Long getRoomStatus() 
    {
        return roomStatus;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setUserIdCard(String userIdCard) 
    {
        this.userIdCard = userIdCard;
    }

    public String getUserIdCard() 
    {
        return userIdCard;
    }
    public void setUserCheckinDate(Date userCheckinDate) 
    {
        this.userCheckinDate = userCheckinDate;
    }

    public Date getUserCheckinDate() 
    {
        return userCheckinDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("roomId", getRoomId())
            .append("buildingType", getBuildingType())
            .append("floor", getFloor())
            .append("roomNumber", getRoomNumber())
            .append("roomType", getRoomType())
            .append("capacity", getCapacity())
            .append("pricePerNight", getPricePerNight())
            .append("amenities", getAmenities())
            .append("imgUrl", getImgUrl())
            .append("roomStatus", getRoomStatus())
            .append("userId", getUserId())
            .append("userName", getUserName())
            .append("userIdCard", getUserIdCard())
            .append("userCheckinDate", getUserCheckinDate())
            .toString();
    }
}
